package com.hsmpay.mobile.service.terminal;

import com.hsmpay.common.service.BaseService;
import com.hsmpay.mobile.pojo.terminal.TerminalPrivileges;

import java.io.Serializable;
import java.util.List;

/**
 * 终端功能清单 服务类接口 terminalPrivilegesService
 * 对应Dao terminalPrivilegesDao
 *
 * @param <Entity>
 * @param <Query>
 * @author 颜铃璋
 *         创建时间： 2013-1-16
 */
public interface TerminalPrivilegesService<Entity extends Serializable, Query extends Object> extends BaseService<Entity, Query> {
    /**
     * 根据功能关键字 返回功能可不可用
     *
     * @param functionKey
     * @return
     * @throws Exception
     */
    public TerminalPrivileges checkPrivilegesIsValid(String functionKey) throws Exception;

    /**
     * 根据功能关键字 查询功能
     *
     * @param functionKey
     * @return
     * @throws Exception
     */
    public TerminalPrivileges searchPrivilegesByFunctionKey(String functionKey) throws Exception;

    /**
     * 返回可见的功能列表
     * @return
     * @throws Exception
     */
    public List<TerminalPrivileges> searchVisibleFunctions() throws Exception;
}
